package org.jwcloud.project.module.zx.template.service;

import java.util.List;
import java.util.Map;

import org.jwcloud.project.module.zx.common.Resp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.jw.mid.mm.comm.common.json.Response;
import com.jw.mid.mm.comm.common.pagination.PageListSlice;
import com.jw.mid.mm.comm.common.pagination.Pagination;

@Service
public interface RptTemplateService {
	
//	@Autowired
//    public RptCommonRepository rptCommonRepository;
	
	public Resp<List<Map<String, String>>> queryTemplateList( Map param);
	public Resp<Response<PageListSlice>> queryTemplateList(Pagination pagination, Map param);
	
	public Resp<Object> doTemplateInsert(Map param);
	public Resp<Object> doTemplateUpdate(Map param);
	public Resp<Object> doTemplateDelete(Map param);
	public Resp<Object> doTemplateCopy(Map param);
	/**
	 * 设置启用
	 * @param param
	 * @return
	 */
	public Resp<Object> doTemplateSetStart(Map param);
	
	
	public Resp<List<Map<String, String>>> queryWorkList(Map param);
	public Resp<List<Map<String, String>>> queryPriorWorkList(Map param);
	public Resp<Object> doWorkInsert(Map param);
	public Resp<Object> doWorkUpdate(Map param);
	public Resp<Object> doWorkDelete(Map param);
	
	public Resp<Object> doWorkInsertPrior(Map param);
	
	public Resp<Object> changeTaskIndex(Map param);
	public Resp<Object> updateTask(Map param);
	public Resp<Object> updateTask_sz(Map param);
	
	
	public Resp<List<Map<String, String>>> queryTaskList(Map param);
	public Resp<List<Map<String, Object>>> queryItemList_sz(Map param);
	public Resp<List<Map<String, Object>>> queryTaskList_sz_rel_template(Map param);
//	public List<Map<String, String>> queryItemList_sz_total(Map param);
	public Resp<Object> insertItem_sz(Map param);
	public Resp<Object> updateItem_sz(Map param);
	
	public Resp<Response<PageListSlice>> queryItemList_sz(Pagination pagination, Map param);
	public Resp<Response<PageListSlice>> queryTaskList_sz(Pagination pagination, Map param);
	public Resp<Object> queryTaskList_sz_unpagi(Map param);
	
	public Resp<Integer> insertTask(Map param);
	public Resp<Integer> insertTask_sz(Map param);
	
	public Resp<Integer> deleteTask(Map param);
	public Resp<Integer> deleteTask_sz(Map param);
	public Resp<Integer> deleteItem(Map param);
	public Resp<Integer> deleteItem_sz(Map param);
}
